home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / os2 / which213.zip / src-org / Makefile < prev    next >
Makefile  |  1993-07-28  |  3KB  |  134 lines

  1. # Makefile for "which"                                   28 July 1993
  2. #
  3. # - for Microsoft C under MS-DOS, version 6.0 or higher
  4. # - for Microsoft C under OS/2 1.x (16-bit), version 6.0 or higher
  5. # - for IBM C/C++ Set/2 under OS/2 2.0 (32-bit)
  6. # - for GNU gcc (emx kit) under OS/2 2.0 (32-bit), version 0.8e or higher
  7. # - for Watcom C/386 under OS/2 2.0 (32-bit), version 9.0 or higher
  8. # - for Borland C++ 3.1 under MS-DOS
  9. # - for Borland C++ beta and possibly 1.0 release, under OS/2 2.0
  10. #
  11. # To use, enter "{d,n}make" (only tested with nmake), or "nmake list"
  12. # for list of targets.  Name of makefile must be "makefile".  GNU make
  13. # supposedly works but doesn't always give the correct error messages.
  14. #
  15. # Notes on IBM C Set/2, Watcom C/386, Borland C++ or gcc compilation:
  16. #   The resulting programs can be used under OS/2 protected
  17. #   mode of OS/2 2.0 only, not under 1.x and not under DOS.
  18.  
  19. OBJ=.obj
  20.  
  21. default:    msc
  22.  
  23. list:
  24.     @echo     Enter "$(MAKE) target" where target is one of:
  25.     @echo        msc mscdos mscos2 ibm ibmdyn watcom
  26.     @echo        bccdos bccos2 gcc gccdyn gccdebug
  27.     @echo     default is msc (MSDOS/OS2 bound executable)
  28.  
  29. # MSC 6.00 for OS/2 and MS-DOS, 16-bit bound
  30. msc:    which.c which.def
  31.     cl -nologo -AS -Ocegit -Gs -DMSC $(FP) -F 2000 -Lp -Fbwhich.exe \
  32.      which.c which.def
  33. #    LDFLAGS2="-link /noe /pm:vio"
  34.  
  35. # MSC 6.00 cross-compilation for MS-DOS
  36. mscdos:    which.c which.def
  37.     cl -nologo -AS -Oacit -Gs -DMSC $(FP) -F 2000 -Lr -Fewhich.exe which.c
  38. #    LDFLAGS2="-link /noe /exe"
  39.  
  40. # MSC 6.00 for OS/2, 16-bit
  41. mscos2:    which.c which.def
  42.     cl -nologo -AS -Ocegit -G2s -DOS2 -DMSC $(FP) -F 2000 -Lp -Fewhich.exe \
  43.      which.c which.def
  44. #    LDFLAGS2="-link /noe /pm:vio"
  45.  
  46. # IBM C Set/2, statically linked runtime
  47. ibm:
  48.     $(MAKE) all \
  49.     CC="icc -Q -O -Gs" \
  50.     CFLAGS="-Sm -Sp1 -DOS2" \
  51.     LDFLAGS="-Fe" \
  52.     LDFLAGS2="" \
  53.     OUT="-Fo" \
  54.     DEF="which.def"
  55.  
  56. # IBM C Set/2, dynamically linked runtime
  57. ibmdyn:
  58.     $(MAKE) all \
  59.     CC="icc -Q -O -Gs -Gd" \
  60.     CFLAGS="-Sm -Sp1 -DOS2" \
  61.     LDFLAGS="-Fe" \
  62.     LDFLAGS2="" \
  63.     OUT="-Fo" \
  64.     DEF="which.def"
  65.  
  66. # Watcom C/386 9.0
  67. watcom:
  68.     $(MAKE) all \
  69.     CC="wcl386 -zq -Ox -s" \
  70.     CFLAGS="-Zp1 -DOS2" \
  71.     LDFLAGS="-k0x40000 -x -Fe=" \
  72.     LDFLAGS2="" \
  73.     OUT="-Fo" \
  74.     DEF=""
  75.  
  76. # Borland C++ 3.1
  77. # This form *should* work without the OBJ= line above, but it doesn't...
  78. #    bcc -mt -lt -O2 -G -Z -a -d -P-.c -ewhich.com which.c
  79. bccdos:
  80.     bcc -mt -lt -O2 -G -Z -a -d -P-.c which
  81.  
  82. # Borland C++ beta (TOPAZ)
  83. bccos2:
  84.     $(MAKE) all \
  85.     CC="bcc -O" \
  86.     CFLAGS="-w- -DOS2" \
  87.     LDFLAGS="-e" \
  88.     LDFLAGS2="" \
  89.     OUT="-o" \
  90.     DEF=""
  91.  
  92. # emx 0.8f, gcc, OMF format, statically linked C runtime and emx
  93. gcc:
  94.     $(MAKE) all \
  95.     CC="gcc -Zomf -Zsys -O" \
  96.     CFLAGS="-DOS2" \
  97.     LDFLAGS="-o ./" \
  98.     LDFLAGS2="-s -los2" \
  99.     OUT="-o" \
  100.     DEF="which.def"
  101.  
  102. # emx 0.8f, gcc, OMF format, dynamically linked C runtime and emx
  103. gccdyn:
  104.     $(MAKE) all \
  105.     CC="gcc -Zomf -Zmt -O" \
  106.     CFLAGS="-DOS2" \
  107.     LDFLAGS="-o ./" \
  108.     LDFLAGS2="-s -los2" \
  109.     OUT="-o" \
  110.     DEF="which.def"
  111.  
  112. # emx, gcc, a.out format, with debug info for gdb
  113. gccdebug:
  114.     $(MAKE) all \
  115.     CC="gcc -g" \
  116.     CFLAGS="-DOS2" \
  117.     LDFLAGS="-o ./" \
  118.     LDFLAGS2="-los2" \
  119.     OUT="-o" \
  120.     OBJ=".o"
  121.  
  122. # variables
  123. OBJS  = which$(OBJ)
  124.  
  125. .c$(OBJ):
  126.     $(CC) $(CFLAGS) -c $<
  127.  
  128. all:    which.exe
  129.  
  130. which.exe: $(OBJS) $(DEF)
  131.     $(CC) $(LDFLAGS)$@ $(DEF) $(OBJS) $(LDFLAGS2)
  132.  
  133. which$(OBJ):    which.c
  134.